import { AppStateService } from './app.chef.component';
import { FrontStoreStocksService } from './services/frontStoreStocksService';
import { ChefResetPageService } from './pages/chefReset/index';
import { ChefDisplayPageService } from './pages/chefDisplay/index';
import { AddScrap } from './pages/chefScrap/addScrap';
import { ChefScrapPageService } from './pages/chefScrap/index';
import { BindChef } from './pages/initialization/chef/bindChef';
import { NoContentComponent } from './pages/no-content/no-content.component';
import { InitializationService } from './pages/initialization/index';
import { Routes } from '@angular/router';
import { BaseAppComponent } from './app.component';
import { ShellIntegrationService } from './services/shellIntegration';
import { HomePageService } from './pages/chefHome/index';


InitializationService.current.registerChildrenRoute({
    path:"bindChef",name:"bindChef", url: "initialization/bindChef", component: BindChef
})

export const appModuleDeclarations = [
    BaseAppComponent,
    ...HomePageService.current.forRoot(),
    ...ChefScrapPageService.current.forRoot(),
    ...InitializationService.current.forRoot(),
    ...ChefDisplayPageService.current.forRoot(),
    ...ChefResetPageService.current.forRoot()
]

export const appModuleProviders = [
    ShellIntegrationService,
    FrontStoreStocksService,
    AppStateService
]

export const appEntryComponents = [
    AddScrap
]

export const ROUTES: Routes = [
    HomePageService.current.route,
    InitializationService.current.route,
    ChefScrapPageService.current.route,
    ChefDisplayPageService.current.route,
    ChefResetPageService.current.route,
    { path: '**', component: NoContentComponent },
];
